package com.newcoin.chat.service;

import com.newcoin.chat.beans.vo.ResultVo;
import com.newcoin.chat.beans.vo.UserVo;

public interface UserService {
    /**
     * 是否授权
     *
     * @param superUserId
     * @return
     * @throws Exception
     */
    ResultVo<UserVo> whetherAuthorized(long superUserId) throws Exception;

    /**
     * 授权 同步信息
     *
     * @param superUserId
     * @param mobile
     * @param nickname
     * @param headImgPath
     * @return
     * @throws Exception
     */
    ResultVo<UserVo> authorized(long superUserId, String mobile, String nickname, String headImgPath) throws Exception;

    /**
     * 通过Id获取用户信息
     *
     * @param userId
     * @return
     * @throws Exception
     */
    ResultVo<UserVo> getUserInfoById(long userId) throws Exception;

    /**
     * 修改头像
     *
     * @param userId
     * @param headPath
     * @return
     * @throws Exception
     */
    ResultVo updateUserHead(Long userId, String headPath) throws Exception;

    /**
     * 修改昵称
     * @param userId
     * @param nickname
     * @return
     * @throws Exception
     */
    ResultVo updateUserNickname(Long userId, String nickname) throws Exception;
}
